package com.itheima.demo;

import java.util.Arrays;
import java.util.Random;

public class Test03 {
    public static void main(String[] args) {
        /*
        需求：
            定义一个方法随机生成一个5位的验证码
            验证码格式:
            长度为5
            前四位是大写字母或小写字母
            最后一位是数字
        */

        //1.先生成a-z、A-Z的字母数据集合
        //通过ASCII值转换生成
        //定义字母集合
        char[] chars = new char[52];
        for (int i = 0; i < chars.length; i++) {
            if (i < 26) { //小写字母
                chars[i] = (char) (97 + i);//通过类型强转
            } else { //大写字母
                chars[i] = (char) (65 + i - 26);//通过类型强转
            }
        }
        //2.生成随机索引，从字符集合中获取4个字母
        Random random = new Random();

        StringBuilder verificationCode = new StringBuilder();
        for (int i = 0; i < 4; i++) {
            int randomIndex = random.nextInt(chars.length);
            verificationCode.append(chars[randomIndex]);
        }

        //3.随机生成0-9的数字
        int number = random.nextInt(9);

        //4.生成最终验证码
        verificationCode.append(number);
        System.out.println("验证码：" + verificationCode);

    }
}
